package config

import (
	"github.com/gogf/gf/g/os/glog"
	"github.com/spf13/viper"
)

// 初始化配置文件
func NewConfig(configPath string) (v *viper.Viper) {

	v = viper.New()
	// 给定配置文件名, 否则读取conf目录下的conf.yaml文件作为配置
	if configPath != "" {
		v.SetConfigFile(configPath)
	} else {
		// viper.AddConfigPath("conf")
		// viper.SetConfigName("conf")
		v.SetConfigFile("conf.yaml")
	}

	// viper解析配置文件
	err := v.ReadInConfig()
	if err != nil {
		panic(err.Error() + "初始解析配置文件失败")
	}
	glog.Info("配置文件初始化完成:", v.AllKeys())
	return

}
